﻿using Abp.Auditing;
using Abp.Domain.Entities;
using Abp.Domain.Entities.Auditing;
using System;
using System.ComponentModel.DataAnnotations;

namespace Mt.Site.Core.WorkFlows.Design.Entities
{
    /// <summary>
    /// 列表控件配置
    /// </summary>
    public class WorkFlowPaperListCtrl : FullAuditedEntity<Guid>, IPassivable, IMustHaveTenant, IExtendableObject
    {
        public const int MaxDescriptionLength = 250;
        public const int MaxNameLength = 32;

        /// <summary>
        /// 60 * 1024; //60KB
        /// </summary>
        public const int MaxExtensionDataLength = 60 * 1024;

        [Required]
        [StringLength(MaxNameLength)]
        public string Name { get; set; }


        [StringLength(MaxDescriptionLength)]
        public string Description { get; set; }

        [Audited]
        [StringLength(MaxExtensionDataLength)]
        public string ExtensionData { get; set; }

        public bool IsActive { get; set; }

        public int TenantId { get; set; }
    }
}
